vue2 和 vue3 响应式区别：

vue2  Object.defineProperty 实现数据劫持  在对象上定义新属性 或者修改现有对象的属性
      三个参数：
      Object.defineProperty（定义属性的对象，属性名称， 属性描述）
      缺点：
        递归遍历对象属性，消耗大
        新增/删除属性 数据无响应  ，需要通过额外的方法 才能实现(this.$set)
        数组修改 也需要额外的方法
vue3  proxy 拦截对象中任何属性变化， 值  添加 删除
      proxy(代理的目标对象, 对象的handler（处理函数）)
      属性是否 新增 或删除 可以随时监听
